package com.example.kotlin_library

import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier

/**
 * 跨平台的 AsyncImage 组件
 *
 * Android: 使用 Coil 的 AsyncImage
 * OHOS: 使用 CAPI 创建原生图像节点
 *
 * @param url 图片 URL（支持网络链接、本地文件）
 * @param contentDescription 内容描述
 * @param modifier Compose 修饰符
 * @param onLoading 加载中的回调
 * @param onSuccess 加载成功的回调
 * @param onError 加载失败的回调
 */
@Composable
expect fun UniversalAsyncImage(
    url: String,
    contentDescription: String?,
    modifier: Modifier = Modifier,
    onLoading: (() -> Unit)? = null,
    onSuccess: (() -> Unit)? = null,
    onError: ((Throwable?) -> Unit)? = null
)